package com.ybb.order.service;

import com.ybb.order.vo.OrderVo;

import java.util.Date;
import java.util.List;
import java.util.Map;


public interface OrderService {
    /*未支付*/
    Integer ORDER_STATUS_UNPAY = 0;
    /*已支付*/
    Integer ORDER_STATUS_PAYED = 1;
    /*已取消*/
    Integer ORDER_STATUS_CANCEL = 2;

    OrderVo getOrder(Integer orderId) ;

    /**
     * 创建未支付状态的订单
     */
    Integer createOrderNopay(OrderVo orderVo) ;

    /**
     * 更新订单状态更新为已支付，同时添加更新时间。
     */
    void confirmPayOrder(Integer orderId) ;

    List<Integer> getTimeOutOrders(Date watermark, Integer status);

    void cancelOrder(Integer orderId) ;

    Map<String, Double> orderAmount(Date start, Date end) ;
}
